/**
 * @file
 * @author  Tsin Smith <tsin.creator@gmail.com>
 *
 * @section DESCRIPTION
 *
 */

#ifndef __TSIN_LIBRARY_ENEMYEVENT_HPP__
#define __TSIN_LIBRARY_ENEMYEVENT_HPP__

namespace tsin {

        class Enemy;

        class EnemyEvent {
        public:
                virtual void init(Enemy &enemy) = 0;
                virtual bool trigger(Enemy &enemy, bool early) = 0;
                virtual EnemyEvent *handle(Enemy &player, bool early) = 0;
        };

}

#endif /* __TSIN_LIBRARY_ENEMYEVENT_HPP__ */
